BasedOnStyle: LLVM
IndentWidth: 4
UseTab: false

AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: true
AlignConsecutiveMacros: true
AlignEscapedNewlines: Left
AlignOperands: Align

AlignTrailingComments: true
AllowShortBlocksOnASingleLine: Empty
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: Empty
AllowShortIfStatementsOnASingleLine: WithoutElse

BinPackArguments: true

BreakBeforeBraces: Custom
BraceWrapping:
    AfterCaseLabel: false
    AfterControlStatement: MultiLine
    AfterFunction: true
    AfterStruct: true
    BeforeElse: true
    BeforeWhile: false
    IndentBraces: false
    SplitEmptyFunction: false

IncludeBlocks: Regroup
SpaceBeforeParens: ControlStatements
SpaceBeforeSquareBrackets: false
SpaceInEmptyBlock: false
SpacesBeforeTrailingComments: 4
SpacesInCStyleCastParentheses: false
SpacesInContainerLiterals: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
